package modelo.entidade;

public class Contato {
	
	private long id_contato;
	private String nm_contato;
	private int tel_celular;
	private int tel_resid;
	private int tel_recado;
	private String email;

	
	//Getters and Setters***
	public long getId_contato() {
		return id_contato;
	}

	public void setId_contato(long id_contato) {
		this.id_contato = id_contato;
	}

	public String getNm_contato() {
		return nm_contato;
	}

	public void setNm_contato(String nm_contato) {
		this.nm_contato = nm_contato;
	}
		
	public int getTel_celular() {
		return tel_celular;
	}

	public void setTel_celular(int tel_celular) {
		this.tel_celular = tel_celular;
	}

	public int getTel_resid() {
		return tel_resid;
	}

	public void setTel_resid(int tel_resid) {
		this.tel_resid = tel_resid;
	}

	public int getTel_recado() {
		return tel_recado;
	}

	public void setTel_recado(int tel_recado) {
		this.tel_recado = tel_recado;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}
	
	//Getters and Setters*
	
	
	//Construtores***
	public Contato(long id_contato, String nm_contato, int tel_celular,
			int tel_resid, int tel_recado, String email) {
		super();
		this.id_contato = id_contato;
		this.nm_contato = nm_contato;
		this.tel_celular = tel_celular;
		this.tel_resid = tel_resid;
		this.tel_recado = tel_recado;
		this.email = email;
	}
	
	
	public Contato(String nm_contato, int tel_celular, int tel_resid,
			int tel_recado, String email) {
		super();
		this.nm_contato = nm_contato;
		this.tel_celular = tel_celular;
		this.tel_resid = tel_resid;
		this.tel_recado = tel_recado;
		this.email = email;
	}

	public Contato(long id_contato) {
		super();
		this.id_contato = id_contato;
	}
	//Construtores*
	
	//toString***
	@Override
	public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append("Contato [id_contato=").append(id_contato)
				.append(", nm_contato=").append(nm_contato)
				.append(", tel_celular=").append(tel_celular)
				.append(", tel_resid=").append(tel_resid)
				.append(", tel_recado=").append(tel_recado).append(", email=")
				.append(email).append("]");
		return builder.toString();
	}
	//toString*
	
	//hashCode***
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((email == null) ? 0 : email.hashCode());
		result = prime * result + (int) (id_contato ^ (id_contato >>> 32));
		result = prime * result
				+ ((nm_contato == null) ? 0 : nm_contato.hashCode());
		result = prime * result + tel_celular;
		result = prime * result + tel_recado;
		result = prime * result + tel_resid;
		return result;
	}

	//hashCode*
	
	//equals***
	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Contato other = (Contato) obj;
		if (email == null) {
			if (other.email != null)
				return false;
		} else if (!email.equals(other.email))
			return false;
		if (id_contato != other.id_contato)
			return false;
		if (nm_contato == null) {
			if (other.nm_contato != null)
				return false;
		} else if (!nm_contato.equals(other.nm_contato))
			return false;
		if (tel_celular != other.tel_celular)
			return false;
		if (tel_recado != other.tel_recado)
			return false;
		if (tel_resid != other.tel_resid)
			return false;
		return true;
	}
	
	//equals*	
	
	
}